Factory method
欲しいオブジェクトを直接constructorから作らず、別のクラス(Factoryなクラス, createメソッドを持つ)から作成
メリットは、
作る側: Factoryクラスで共通化処理を書いておける。他のクラスのコンストラクターと共通化できる見通しがたった場合。
利用する側: Interfaceとして共通のcreateメソッドを使ってオブジェクトを作成すればよいと、受け入れ処理の共通化
どういう
半製品を作っておいて、最終製品(クラス、オブジェクト)はメインのところ(ランタイム?)で仕上げるイメージ。
自分の理解のイメージの記憶のために、メモ。
createメソッドを実装したサブクラスを作る。
a core point is the caller of that method does not need to know the exact type of the created object.